using System;

namespace BTEditor
{
    public enum EditorNodeEnum
    {
        Composite,
        Decorator,
        Task,
        Root,
    }

    public enum DealType
    {
        OnlyUse,
        ActionToChild,
        EnumValue
    }

    public enum ErrorType
    {
        Warn,
        Error,
        None
    }

    public enum Policy
    {
        ONE,
        ALL,
    }

    public enum ActionType
    {
        Action,
        Func_Out_Bool,
        Func_Out_Float,
        Func_In_Bool_Out_Result,
        Func_In_Request_Out_Result
    }

    /// <summary>
    /// 参数个数
    /// </summary>
    [Flags]
    public enum ArgsCountType
    {
        None = 0,
        One = 1 << 1,
        Two = 1 << 2,
        Three = 1 << 3,
        Four = 1 << 4,
        Five = 1 << 5
    }

    public class EditorNodeConst
    {
        /// <summary>
        /// 装饰节点 一般可添加子节点
        /// </summary>
        public const int Normal_Decorator_CanAddNode = 1;

        /// <summary>
        /// 复合节点 一般可添加子节点
        /// </summary>
        public const int Normal_Composite_CanAddNode = 999;

        /// <summary>
        /// 任务节点 一般可添加子节点
        /// </summary>
        public const int Normal_Task_CanAddNode = 0;
    }
}